﻿using System;
using CoreEx.Common.Data;
using LinFu.IoC.Configuration;

namespace CoreEx.Common.Implementation.Data
{
    /// <summary>
    /// Represents a column in an <see cref="ITable"/> instance.
    /// </summary>
    [Implements(typeof(IColumn),LifecycleType.OncePerRequest)]
    public class Column : IColumn
    {
        /// <summary>
        /// Gets or sets the name of the column.
        /// </summary>
        public string ColumnName { get; set;}

        /// <summary>
        /// Gets or sets the data type of this <see cref="IColumn"/>
        /// </summary>
        public Type DataType { get; set;}

        /// <summary>
        /// Gets or sets the <see cref="ITable"/> that this <see cref="IColumn"/> belongs to.
        /// </summary>
        public ITable Table { get; set;}        
        
    }
}